Fix read of invalid integer values.
authoroliskoli <oliskoli>
Sun, 28 Jan 2007 18:21:22 +0000 (18:21 +0000)
committeroliskoli <oliskoli>
Sun, 28 Jan 2007 18:21:22 +0000 (18:21 +0000)
win32/gui-2/options.pas

index 1c30b98c5aea0cd5c4c65b9cd930fa85b5518294..788eb972338cfc47dc9ae6d12fe64b8e1f5a1238 100644 (file)
@@ -767,6 +767,7 @@ var
   s, key, value: string;\r
   r: TRegistry;\r
   u: TUpDown;\r
+  v: Integer;\r
 begin\r
   r := TRegistry.Create;\r
   try\r
@@ -799,7 +800,12 @@ begin
         if (value <> '(default)') then\r
         begin\r
           if HasUpDown(TEdit(o.edit), u) then\r
-            u.Position := StrToInt(value)\r
+          begin\r
+            if (o.def <> nil) then\r
+              v := StrToIntDef(o.def, 0) else\r
+              v := 0;\r
+            u.Position := StrToIntDef(value, v);\r
+          end\r
           else\r
             SetStrProp(o.edit, 'Text', value);\r
         end;\r